home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 001-025 / scopedisk21 / dmouse19 / dmouse.h < prev    next >
C/C++ Source or Header  |  1995-03-18  |  2KB  |  98 lines

  1.  
  2. /*
  3.  *  DMOUSE.H
  4.  */
  5.  
  6. #define DMS struct _DMS
  7. #define REQ struct _REQ
  8.  
  9. #define PORTNAME    "DMouse"
  10.  
  11. #define REQ_SCREENON    -1
  12. #define REQ_SCREENOFF    -2
  13. #define REQ_MOUSEON    -3
  14. #define REQ_MOUSEOFF    -4
  15. #define REQ_DOCMD    -5
  16. #define REQ_RAWMOUSE    -6
  17. #define REQ_RAWKEY    -7
  18.  
  19. #define SBF_C    SIGBREAKF_CTRL_C
  20. #define SBF_D    SIGBREAKF_CTRL_D
  21. #define SBF_E    SIGBREAKF_CTRL_E
  22. #define SBF_F    SIGBREAKF_CTRL_F
  23.  
  24. typedef unsigned short        uword;
  25. typedef unsigned long        ulong;
  26.  
  27. typedef struct copinit        COPINIT;
  28. typedef struct Message        MSG;
  29. typedef struct Custom        CUST;
  30. typedef struct Preferences  PREFS;
  31. typedef struct InputEvent   IE;
  32. typedef struct MsgPort        PORT;
  33. typedef struct IOStdReq     IOR;
  34. typedef struct Interrupt    INT;
  35. typedef struct Screen        SCR;
  36. typedef struct Window        WIN;
  37. typedef struct Layer        LAYER;
  38. typedef struct NewScreen    NS;
  39. typedef struct Task        TASK;
  40. typedef struct Process        PROC;
  41. typedef struct timeval        TS;
  42. typedef void            (*FPTR)();
  43.  
  44.  
  45. DMS {
  46.     PORT    Port;
  47.     short   Version;
  48.     short   Acc;
  49.     short   AThresh;
  50.     long    STo;
  51.     long    MTo;
  52.     uword   Code;
  53.     uword   Qual;
  54.     uword   RQual;        /*    Right button qualifier    */
  55.     uword   LQual;        /*    Left button qualifier    */
  56.     char    Cmd[256];
  57.     char    LMBEnable;
  58.     char    AAEnable;
  59.     char    IPri;
  60.     char    FSEnable;        /*    Foreign Screen Enable    */
  61.     char    Workbench;        /*    Use WindowToFront/Back    */
  62.     char    Reserved2;
  63.     char    Reserved3;
  64.     TASK    *HandTask;
  65.     TASK    *ShakeTask;
  66.     short   ShakeSig;
  67.     short   StartupError;
  68.     uword   *NoSprData;
  69.     long    Segment;
  70.  
  71.     uword   Clicks;    /*  # clicks required        */
  72.     uword   CLeft;    /*  # clicks left to do     */
  73.     TS        CTime;    /*  time of last click        */
  74.     WIN     *CWin;    /*  All clicks in same window    */
  75.     char    Reset;    /*  Option modified, reset tos    */
  76. };
  77.  
  78. REQ {
  79.     MSG     Msg;
  80.     TS        ie_TimeStamp;
  81.     uword   ie_Code;
  82.     uword   ie_Qualifier;
  83. };
  84.  
  85. extern IOR *CreateStdIO();
  86. extern SCR *OpenScreen();
  87. extern void *AllocMem();
  88. extern void *malloc();
  89. extern void *GetMsg();
  90. extern void *OpenLibrary();
  91. extern PORT *CreatePort();
  92. extern TASK *FindTask();
  93. extern PROC *CreateProc();
  94. extern LAYER *WhichMouseLayer();
  95. extern LAYER *WhichLayer();
  96. extern DMS   *FindPort();
  97.  
  98.